Skip to main content

v8.4.0

This release adds Catalyst AI (CT Bot) — an opt-in chat widget that answers admin users' questions via read-only MCP tools — plus a fix to the MCP aggregate tool schema for models without numeric columns.

New Features​

Catalyst AI (CT Bot)​

A floating chat widget is available on every admin page for users whose CmRole has Catalyst AI enabled. Conversations stream replies over ActionCable, support attachments and clarifying-question cards, and record per-request token/cost usage as CtCostTracking. See the Catalyst AI feature guide for details.

Migration Steps​

  1. Run the Add Bot Conversations generator, then migrate:
rails generate cm_admin:add_bot_conversations
rails db:migrate

The generated migrations create four tables — ct_bot_conversations, ct_bot_messages, ct_bot_artifacts, ct_cost_trackings — and add is_catalyst_ai_enabled (boolean, default false) to cm_roles.

warning

The conversations migration adds a foreign key to users. If your user class maps to a different table (e.g. admins), edit the generated migration's foreign_key: target before running db:migrate.

  1. Register the new models in config/initializers/zcm_admin.rb:
config.included_models = [..., CtBotConversation, CtBotMessage, CtCostTracking]
  1. Add your OpenRouter key to credentials (rails credentials:edit):
catalyst_ai:
openrouter_api_key: sk-or-...
  1. Ensure config/cable.yml exists — the assistant streams replies over ActionCable. Use the Redis adapter in production.

  2. Seed the Catalyst AI platform settings (CmPlatformSetting.add_cm_default_settings) or create CT Bot Greeting, CT Bot Model, and CT Bot Queue via the Platform Settings page.

  3. Switch on Catalyst AI on each CmRole that should see the widget, and declare mcp_actions on the models the assistant may query.

Checklist​

  1. Run rails generate cm_admin:add_bot_conversations && rails db:migrate (adjust the user-table foreign key if needed).
  2. Add CtBotConversation, CtBotMessage, CtCostTracking to config.included_models.
  3. Set the catalyst_ai.openrouter_api_key credential.
  4. Confirm config/cable.yml is configured (Redis in production) and Sidekiq is running.
  5. Seed/create the three Catalyst AI platform settings; restart the app and Sidekiq after changing them.
  6. Enable Catalyst AI on the relevant roles and add mcp_actions to assistant-visible models.